Generalizers: New Metaobjects for Generalized Dispatch
نویسندگان
چکیده
This paper introduces a new metaobject, the generalizer, which complements the existing specializer metaobject. With the help of examples, we show that this metaobject allows for the efficient implementation of complex non-classbased dispatch within the framework of existing metaobject protocols. We present our modifications to the generic function invocation protocol from the Art of the Metaobject Protocol ; in combination with previous work, this produces a fully-functional extension of the existing mechanism for method selection and combination, including support for method combination completely independent from method selection. We discuss our implementation, within the SBCL implementation of Common Lisp, and in that context compare the performance of the new protocol with the standard one, demonstrating that the new protocol can be tolerably efficient. Report-No.: http://eprints.gold.ac.uk/id/eprint/9924
منابع مشابه
Efficient Multimethods in a Single Dispatch Language
Smalltalk-80 is a pure object-oriented language in which messages are dispatched according to the class of the receiver, or first argument, of a message. Object-oriented languages that support multimethods dispatch messages using all their arguments. While Smalltalk does not support multimethods, Smalltalk's reflective facilities allow programmers to efficiently add them to the language. This p...
متن کاملA Metaobject Architecture for Fault-Tolerant Distributed Systems: The FRIENDS Approach
Abstract: The FRIENDS system developed at LAAS-CNRS is a metalevel architecture providing libraries of metaobjects for fault tolerance, secure communications and group-based distributed applications. The use of metaobjects provides a nice separation of concerns between mechanisms and applications. Metaobjects can be used transparently by applications and can be composed according to the needs o...
متن کاملFriends - A Flexible Architecture for Implementing Fault Tolerant and Secure Distributed Applications
FRIENDS is a software-based architecture for implementing faulttolerant and, to some extent, secure applications. This architecture is composed of sub-systems and libraries of metaobjects. Transparency and separation of concerns is provided not only to the application programmer but also to the programmers implementing metaobjects for fault tolerance, secure communication and distribution. Comm...
متن کاملIs Composition of Metaobjects = Aspect Oriented Programming
This paper proposes to implement aspects as metaobjects and using run time aspect weaving. The metaobjects are metaobjects as defined in computational reflection and can be exchanged dynamically at run time. In contract to computational reflection, where only one metaobject exist, we have extended the architecture to allow multiple metaobjects and composition.
متن کاملA General Framework for Inheritance Management and Method Dispatch in Object-Oriented Languages
This paperpresents the DT Framework, a collection of object-oriented classes representing a generalized framework for inheritance management and table-based method dispatch. It demonstrates how most existing table-based dispatch techniques can be generalized and made incremental, so that relevant entries in the dispatch table are modified each time a selector or class hierarchy link is added or...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1403.2765 شماره
صفحات -
تاریخ انتشار 2014